package com.cqie.practicaltraining.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;

import javax.validation.constraints.*;

/**
 * 牧场
 * @TableName pasture
 */
@TableName(value ="pasture")
@Data
public class Pasture implements Serializable {
    /**
     * 
     */
    @TableId(type = IdType.AUTO)
    private Long pastureId;

    /**
     * 牧场名称
     */
    @NotBlank(message = "牧场名字不能为空")
    @Size(max = 100, message = "牧场名字不能超过100个字符")
    private String pastureName;
    /**
     * 场地规模
     */
    @NotNull(message = "场地规模不能为空")
    @Min(value = 100, message = "场地规模不能小于100")
    @Max(value = 999999, message = "场地规模不能超过999999")
    private Long size;

    /**
     * 养殖规模
     */
    @NotNull(message = "养殖规模不能为空")
    @Max(value = 999999, message = "养殖规模不能超过999999")
    private Long breedingScale;

    /**
     * 省市区
     */
    @NotNull(message = "省市区不能为空")
    private Long cityId;

    /**
     * 详细地址
     */
    @NotBlank(message = "详细地址不能为空")
    private String address;

    /**
     * 经度
     */
    @NotNull(message = "经度不能为空")
    private BigDecimal longitude;

    /**
     * 纬度
     */
    @NotNull(message = "纬度不能为空")
    private BigDecimal latitude;

    @NotNull(message = "数据字典ID不能为空")
    private Long dataId;
    /**
     * 牲畜品种
     */
    private String breedsLivestock;

    /**
     * 状态
     */
    private Integer status;

    /**
     * 存栏量
     */
    private Long stock;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 修改时间
     */
    private Date updatedTime;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
